package com.forlgb.powercloud.base.client.source.service;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

public interface RedisService<T> {
    /**
     * 存储数据
     */
    void set(String key, String value);

    /**
     * 获取数据
     */
    String get(String key);

    /**
     * 设置超期时间
     */
    boolean expire(String key, long expire);

    /**
     * 删除数据
     */
    void remove(String key);

    /**
     * 自增操作
     * @param delta 自增步长
     */
    Long increment(String key, long delta);

    void setList(String key, List<T> list);

    List<T> getList(String key);

    void setMap(String key, Map map);

    Map getMap(String key);

    void setHashMap(String key, HashMap hashMap);

    HashMap getHashMap(String key);
}
